As a still image encoding scheme, JPEG is currently prevalent. JPEG was standardized by ISO (International Organization for Standardization). As a moving image encoding scheme, Motion JPEG that exploits JPEG as intra-frame coding is known. Furthermore, as the Internet proliferates, coding that can assure higher functions and higher image quality than JPEG used so far is demanded. For this reason, ISO is laying down new still image coding standards. This activity is generally called “JPEG2000”. Refer to Toda, “Special Report JPEG2000 Explore Next Generation Image Technique”, C MAGAZINE November 1999, pp. 6-10, for an outline of JPEG2000. An ROI (Region of Interest) in this report is a new function, and is a helpful technique.
An image encoding apparatus that can implement the ROI will be explained below with reference to FIG. 13.
Referring to FIG. 13, reference numeral 1001 denotes an image input unit; numeral 1002 denotes a discrete wavelet transformer; numeral 1003 denotes a quantizer; numeral 1004 denotes an entropy encoder; numeral 1005 denotes a code output unit; and numeral 1011 denotes a region designation unit.
The image input unit 1001 outputs image data that form an image to be encoded in the raster scan order. The image signal output from the image input unit 1001 is input to the discrete wavelet transformer 1002. The discrete wavelet transformer 1002 executes a two-dimensional wavelet transformation process for the input image signal, and computes and outputs transform coefficients.
FIG. 14 shows an example of the configuration of transform coefficient groups of two levels obtained by the two-dimensional discrete wavelet transformation process. An image signal is decomposed into coefficient sequences HH1, HL1, LH1, . . . , LL in different frequency bands. Note that these coefficient sequences will be referred to as subbands hereinafter. The coefficients of the individual subbands are output to the quantizer 1003.
The region designation unit 1011 determines a region (ROI) to be decoded to have higher image quality than the surrounding portions in an image to be encoded, and generates mask information indicating coefficients that belong to the ROI upon computing the discrete wavelet transforms of the image to be encoded.
FIG. 15A shows an example of a mark information generation process.
When a star-shaped region is designated in an image by a predetermined instruction input, as shown in the left image of FIG. 15A, the region designation unit 1011 computes those portions of respective subbands that include the designated region upon computing the discrete wavelet transforms of the image including this designated region. The region indicated by this mask information corresponds to a range including transform coefficients of the surrounding region required for reconstructing an image signal on the boundary of the designated region.
The right image of FIG. 15A shows an example of mask information computed in this way. In this example, mask information upon discrete wavelet transformation of the left image in FIG. 15A is computed, as shown therein. In FIG. 15A, a star-shaped portion corresponds to the designated region, bits of the mask information corresponding to this designated region are set at “1”, and other bits of the mask information are set at “0”. Since the entire mask information has the same format as transform coefficients of two-dimensional discrete wavelet transformation, whether or not a transform coefficient at a given position belongs to the designated region can be identified by checking the corresponding bit in the mask information. The mask information generated in this manner is output to the quantizer 1003.
The quantizer 1003 quantizes the input coefficients by a predetermined quantization step, and outputs indices corresponding to the quantized values. The quantizer 1003 changes quantization indices based on the mask information input from the region designation unit 1011 by:q′=q×28; inside region  (1)q′=q; outside region  (2)
With the aforementioned process, only quantization indices that belong to the designated region designated by the region designation unit 1011 are shifted up (to the MSB side) by 8 bits.
FIGS. 15B and 15C show a change in quantization indices by this shift-up process. Referring to FIG. 15B, quantization indices are included in subbands, and change after the shift-up process, as shown in FIG. 15C. The quantization indices changed in this way are output to the entropy encoder 1004.
The entropy encoder 1004 decomposes the input quantization indices into bit planes, executes binary arithmetic coding in units of bit planes, and outputs code streams.
FIG. 16 is a view for explaining the operation of the entropy encoder 1004. In this example, a 4×4 subband region includes three nonzero indices, which respectively have values “+13”, “−6”, and “+3”. The entropy encoder 1004 scans this region to obtain a maximum value M, and computes the required number S of bits.
In FIG. 16, since the maximum coefficient value M is “13”, the number S of bits required for expressing this value is “4”. Sixteen quantization indices in the sequence are processed in units of four bit planes, as indicated by the right side in FIG. 16.
The entropy encoder 1004 makes binary arithmetic coding of bits of the most significant bit plane (indicated by MSB in FIG. 16) first, and outputs the coding result as a bitstream. Then, the encoder 1004 lowers the bit plane by one level, and encodes and outputs bits of each bit plane to the code output unit 1005 until the bit plane of interest reaches the least significant bit plane (indicated by LSB in FIG. 16). At this time, a code of each quantization index is entropy-encoded immediately after the first nonzero bit is detected upon scanning the bit plane.
Parallel to laying down of the still image international standards, MPEG-4 is being examined as a moving image coding scheme, and its international standardization is in progress. Conventional moving image coding represented by MPEG-2 encodes data in units of frames or fields, but MPEG-4 encodes using video and audio data as objects to implement re-use and editing of contents. Furthermore, an object contained in video data is also independently encoded, and can be processed as an object. Details of MPEG-4 are described in, e.g., “Outline of MPEG-4 International Standards Determined”, Nikkei Electronics, 1997.9.22 issue, p. 147-168, international standard IS014496-2, and the like.
The standardization of MPEG-4 has advanced, and an encoding technique of an image having an arbitrary shape or the like has been added. Also, a copyright protection mechanism of object data is undergoing standardization to allow re-use of contents. Furthermore, standardization of a data description for data search (MPEG-7) is also underway. This standardization pertains to a description for appending meta information to facilitate a search.
When meta information, copyright information, or the like is to be appended in JPEG2000, such information must be separately appended in addition to JPEG2000 encoded data, resulting in complicated management and the like.
Upon encoding in units of frames using JPEG2000, audio data must be separately appended, resulting in a complicated sync process and data management.